package com.haiyou.data.common.persister.mysql.annotation;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Inherited;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import java.util.concurrent.TimeUnit;

/**
 * 备份策略
 * 
 * @author xingyuan
 *
 */
@Retention(RetentionPolicy.RUNTIME)
@Target({ ElementType.FIELD, ElementType.TYPE })
@Inherited
@Documented
public @interface SyncPolicy {

	/**
	 * 首次延迟时间
	 * 
	 * @return
	 */
	int initialDelay() default 60;

	/**
	 * 循环迭代延迟时间 小于0则表示不开启同步时效任务，也就是立刻同步
	 * 
	 * @return
	 */
	int delay() default 15;

	/**
	 * 时间单位
	 * 
	 * @return
	 */
	TimeUnit timeUnit() default TimeUnit.SECONDS;

}
